Application development tools are frequently provided to program developers to make the job of programming simpler and more efficient. A technique that has been developed to assist novice and intermediate programmers using such tools, such as VisualAge for Smalltalk from International Business Machines Corp. and PowerBuilder from Sybase Inc., has been the concept of visual programming from parts. In addition to the underlying programming language, such tools provide a selection of pre-built software parts or components presented to a software developer via an icon in a graphical user interface together with an open work space. By simply selecting one of the icons and dragging it into the work space, the developer in effect programs an application that the developer is creating to include the code for the function of the part or component which the icon represents.
Programming from parts is especially effective for developing graphical user interfaces for software applications being created, but is also employed for adding many types of functions to applications such as communication, database access, multimedia, etc.
Application developers utilize multimedia systems to create programs that allow end users to view a multimedia presentation and manipulate various controls. In a construction-from-parts development tool environment, parts need to be connected via an event to other parts to perform actions. For example, a button part's "clicked" event connected to a videoplayer's "play" action--so that when the button is clicked, the video plays. Traditionally, this connection is accomplished via an editor or dialog window requiring the user to make multiple choices/selections to connect the parts. In addition to being time-consuming, this routine must be followed for each connection desired to the last detail.
One product attempting to deal with event connections is Director from Macromedia. Director specifies time on a frame based metaphor. A Score is used in Director to specify when things occur in a movie (or title). The Score is a sequence of frames that hold cells of an animation and the indication to start playing audio or video. Things are specified linearly in Director. Frames are sequenced in order unless software code is written to manually go back to a previous frame. Frames show sequentially one after the other. To control a video player interactively, a special "interactive" track is used. A frame is specified in this track to wait for a mouse click before proceeding to play the video.
Another product, VisualAge from IBM, is a client/server application development tool. It has a facility, called the Composition Editor, where objects are connected by drawing lines between them. This tool allows events from any object to trigger actions of any other object, and the lines drawn between the objects visually indicated that such a relationship exists. However, the process to create these lines require numerous steps and the line drawing gives no information about the order of the connections. As the line drawing becomes more complex (interconnection of many parts), it becomes more and more difficult to understand.
Finally, IconAuthor (IA) is a multimedia authoring tool which allows creation of applications that include time-based media, logic, database, etc. IA uses a flowchart metaphor to specify an application. Icons representing the playing of media, database access, comparisons, assignment, etc. are taken from a palette and connected into a flowchart. Processing in the application then follows the hierarchical structure defined in the flowchart. There is no editor to synchronize processing visually. Synchronization is done by checking logic and by corresponding logic that responds to events.
Thus, there is a need for a method and system that simply and visually provides dynamic connections with intelligent default events and actions.